﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AEBaseCalcCSharp
{
    class UrbanStructure : Structure
    {
        const int baseEnergyUrbanStructure = 0;
        const int baseCostUrbanStructure = 1;
        private int basePopulationUrbanStructure;
        const string structureNameUrbanStructure = "UrbanStructure";

        public override int baseCost { get { return baseCostUrbanStructure; } }
        public override int baseEnergy { get { return baseEnergyUrbanStructure; } }
        public override int basePopulation { get { return basePopulationUrbanStructure; } }
        public override string structureName { get { return structureNameUrbanStructure; } }

        public UrbanStructure(int fertility)
        {
            basePopulationUrbanStructure = fertility;
        }

        public override void incrementLevel(int newLevel, int newFertility)
        {
            basePopulationUrbanStructure = newFertility;

            this.level = newLevel;
            incrementCost();
            incrementEnergy();
            incrementConstruction();
            incrementArea();
            incrementPopulation();
            incrementProduction();
        }
    }
}
